.TH Chess GNU
.SH NAME
Chess \- The Technology Chess Program for GNU Unix
.SH SYNOPSIS
.B Chess
[
.BI \-n
]
.SH DESCRIPTION
.I Chess
plays a game of chess against the user. Or it plays against
itself. Or it referees a game.
.PP
.I Chess
has two display modes. The first mode is simply a normal 
mode that you could use with a terminal. The second mode
is a fancy display mode you can use with a SUN workstation.
To use the former, simply type 'gnuchess'. To use the
latter, simply type 'chesstool gnuchess' on a SUN
workstation where 'chesstool' is installed. In the
latter example, the argument should be the path
specifying where to find the gnuchess binary.
.PP
The following documentation assumes you are in
the first mode (e.g. normal mode using a regular
terminal). If not, then you should read the chesstool documentation.
.PP
For help once in
.I Chess
type a question-mark. To type in your move, use the
notation "e2e4" where the first letter-number pair
indicates the origination square and the second
letter-number pair indicates the destination square.
The letter indicates the column with the left-most
column being "a" and the right-most column being "h".
The number indicates the row, the first row (White's
first rank) being "1" and the last row (Black's
first rank) being "8". To castle, type the origin
square of the king and the destination square of the
king, just as you would do for a regular move.
.PP
The "bd" command prints what the current board position
looks like. You may type this to see what the board
looks like after the computer moves.
.PP
The "book" command compiles the opening book into
dbm(3) format. This book is then consulted
whenever the computer makes a move. If the current
position is in the book, then the suggested move
associated with that position will be made as
the computer's move. Note that this command is a
maintenance command, usually used only once per
site per book.
.PP
The "depth" command allows the user to change how many
moves ahead the computer looks. Normally, it looks ahead
three half-moves, examining every move for each side.
Then, it examines all captures for both sides for another
two half-moves. "Depth" changes the first of these values.
There is an upper boundary of five half-moves as set by
the quiescence search which searches captures a little
deeper to get better tactical play.
.PP
The "enter" command causes the current game played thus
far to be entered in the human-readable version of the
opening book. If no current game is in progress, this
command requests the name of a file from which to read
games. These are then added to the binary database.
Since the versions of the two files are slightly different,
in the former case, you must additionally type "book"
to get the new game fully entered in the book.
Also, the "enter" command tries to mail your new additions
to the book maintainers
so that your contributions can be added to the master copy
of the book. If you are not on our network, you should send
us your new additions via some other method.
.PP
"Fill" allows the user to specify a completely different
board position. Input is based on Forsythe notation.
For example, the opening position in Forsythe notation
is "rnbqkbnrpppppppp8888PPPPPPPPRNBQKBNR+". Capital
letters indicate a White piece, lower-case Black. A plus means
it is White's move, a minus means Black's.
.PP
"History" and "historyf" list the game as played so far
to the terminal and a file respectively. The file is
assumed to be "GAMES/chXXXXXX" where XXXXXX is a random
number and GAMES is a subdirectory. If GAMES does not
exist, an error message is reported. The equivalent of
"historyf" is done after every move automatically to
record the game thus far.
.PP
"Legals" shows legal moves for the current position along with
the rating for each move based on a positional presort.
.PP
"Neither" instructs the program to play neither side, that is,
to simply act as a referee.
.PP
"Parallel" enables or disables parallelism, assuming it has
been available when your version of the program was configured.
In its enabling mode, this command lists the names of the
processors which will be used along with their machine architecture.
.PP
"Reset" resets the board to the starting position.
.PP
"Quit" exits the game.
.PP
"Read" restores a game as if you were still playing it.
The game must be in the format as written by "historyf" or
as automatically recorded by the program itself after every
move.
.PP
"Self" causes the program to play against itself.
.PP
"Static" causes a static evaluation to be done for the
current position. A static evaluation is based on material
difference only. Positional considerations are handled
by the ply-1 positional presort.
.PP
"Switch" causes the program to move, whether or not it
is the program's turn to do so. Continually typing
"switch" is equivalent to typing "self".
.PP
"Test-moves" initiates a test of the speed of the move
generator. An initial series of move generations is done for the
opening position and the timing speed is reported.
Then, for each of ten stored test positions, a series of
move generations is done and the timing speed is reported
for each one. Finally, the program averages across those
ten runs and reports the overall average.
.PP
"Test-search" uses the ten stored test positions to 
actually conduct a search at the current depth to
choose a move for each position.
.PP
"Undo" undoes the last move whether it was the computer's
or the human's. You may also type "remove". This is equivalent
to two "undo's" (e.g. retract one move for each side).
.PP
The flag-option on the command line allows specification
of how deep to search in half-moves as with 'Chess -3'
to search three half-moves ahead. Capture searches are
normally carried out a few half-moves further than the
regular full search specified with this option. This
is known as the quiescence search and it usually is
conducted to 6 ply. This option is identical to the "depth"
command once in the program.
.SH BUGS
.PP
En passant is not currently implemented. Also, promotion
to pieces other than queens is disallowed. Checks and
checkmates are not detected in the tree-search and
are not handled as "forcing" variations.
.PP
There are other bugs. Suggestions for improvements
and caveats are contained in the files README and TODO
which come with this distribution.
.SH AUTHOR
.nf
Stuart Cracraft     Stuart Cracraft
P.O. Box 13123      UCLA, Dept. of Mathematics
Torrance, Ca.       Los Angeles, Ca.
90503               90024
(213) 214-1136      (213) 825-9040
.fi
.SH AUTHOR'S COMMENT
.PP
This software is being made available by the Free Software
Foundation under the restrictions described in its license
agreement which accompanies this distribution. This software,
its sources, binaries, documentation and all associated parts
are copyright (C) 1986 by the Free Software Foundation, Inc.
.SH SEE ALSO
.nf
chesstool(6)
dbm(3)
.fi
